A business or other organization may deploy server devices, storage nodes, or other computing devices in a variety of geographic locations, and the computing devices may be configured to provide various services related to online shopping, electronic commerce, digital media delivery, gaming, communications, web search, social networking, and so forth. Such services may be provided through one or more software systems executing on the computing devices, as in a distributed software deployment on the computing devices. In the course of providing services, a computing device may communicate and exchange information with other computing devices in geographically diverse locations. If communications between computing devices are delayed or unsuccessful, the operation of the one or more software systems may be impaired, which may negatively affect the experience of end-users of the services.
While embodiments are described herein by way of example for several embodiments and illustrative drawings, those skilled in the art will recognize that the embodiments are not limited to the embodiments or drawings described. It should be understood, that the drawings and detailed description thereto are not intended to limit embodiments to the particular form disclosed, but on the contrary, the intention is to cover all modifications, equivalents and alternatives falling within the spirit and scope as defined by the appended claims. The headings used herein are for organizational purposes only and are not meant to be used to limit the scope of the description or the claims. As used throughout this application, the word “may” is used in a permissive sense (i.e., meaning having the potential to), rather than the mandatory sense (i.e., meaning must). Similarly, the words “include,” “including,” and “includes” mean including, but not limited to.